package com.cskaoyan.java._1handle._1catch;

/**
 * 获取异常信息的API
 * 在继续讲多分支的try...catch语法之前
 * 我们来先谈一下捕获异常对象后，在catch代码块中
 * 能够对异常对象执行的操作——获取相关异常信息。
 *
 * 操作被捕获的异常对象，常用API有：
 * // 获取异常信息，返回字符串。打印的实际上是异常产生的原因 （不使用）
 * String getMessage()
 * // 获取异常类名和异常信息，返回字符串。打印的是异常产生的原因和所在类（不使用）
 * String toString()
 * // 获取异常类名和异常信息，以及异常出现在程序中的位置（推荐使用）
 * void printStackTrace()
 * // 使用IO流，将异常内容保存在日志文件中，以便查阅，早已过时，了解即可（过时的日志处理方式）
 * printStackTrace(PrintStream s)
 *
 * @since 15:48
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo2 {
    public static void main(String[] args) {
        /*System.out.println("before");
        try {
            System.out.println(10 / 0);
        } catch (ArithmeticException e) {
            // System.out.println(e.getMessage());
            // System.out.println(e.toString());
            e.printStackTrace();
        }
        System.out.println("after");*/

        // 快捷键 全选代码 ctrl + alt + T 自动生成try...catch
        try {
            System.out.println(10 / 0);
        } catch (ArithmeticException e) {
            e.printStackTrace();
        }
    }
}
